Improve setup for GitHub Copilot coding agent#170
Merged
jaybosamiya-ms merged 2 commits intomainfrom Jun 21, 2025
Merged
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR adds a dedicated GitHub Actions workflow to prepare the Copilot coding agent’s environment (installing Rust toolchain, nextest, and setting up a TUN device) and introduces a repository-level instructions file to enforce formatting and development steps for Copilot commits.
- New
copilot-setup-steps.ymlworkflow to pre-install required tools before Copilot runs - Added
.github/copilot-instructions.mdwith developer workflow and code quality guidelines
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| .github/workflows/copilot-setup-steps.yml | Workflow that installs Rust toolchain (with rustfmt & clippy), nextest, and configures a TUN device |
| .github/copilot-instructions.md | Markdown outlining required pre-commit commands and coding standards for Copilot-driven changes |
Comments suppressed due to low confidence (3)
.github/workflows/copilot-setup-steps.yml:36
- The
~in${CARGO_HOME:-~/.cargo}may not expand correctly in all shells. Consider using${CARGO_HOME:-$HOME/.cargo}/binto ensure the fallback path resolves reliably.
curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
.github/workflows/copilot-setup-steps.yml:36
- [nitpick] Pin the
nextestinstaller to a specific version (instead oflatest) to avoid unexpected changes. For example, downloadhttps://get.nexte.st/0.37.0/linux.
curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
.github/copilot-instructions.md:1
- [nitpick] The phrase “sandboxing library OS” is a bit unclear. Consider clarifying whether this is a library for sandboxing or an operating system, for example “sandboxing library and OS components.”
This repository contains a Rust-based, security-focused sandboxing library OS. To maintain high code quality and consistency, please adhere to the following guidelines when contributing.
|
🤖 SemverChecks 🤖 No breaking API changes detected Note: this does not mean API is unchanged, or even that there are no breaking changes; simply, none of the detections triggered. |
wdcui
approved these changes
Jun 21, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
By default, the coding agent doesn't seem to know that it should set up (say) the TUN device, or install nextest, and it needs to spend time figuring it out, or failing to do so. The
.github/workflows/copilot-setup-steps.ymlsets these things up in advance.Additionally, it noticeably seems to forget to format code, so I've added
.github/copilot-instructions.mdthat tells it to do this for each commit. I also gave it some more information, which should hopefully send it down a nicer path that better matches workflow within our repo.